package com.zbec.mdrs.entity.loan;


import com.fasterxml.jackson.annotation.JsonFormat;
import com.zbec.mdrs.entity.RecordEntity;
import org.hibernate.annotations.Cache;
import org.hibernate.annotations.CacheConcurrencyStrategy;
import org.springframework.format.annotation.DateTimeFormat;

import javax.persistence.Entity;
import javax.persistence.Table;
import javax.persistence.Transient;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;


@Entity
@Table(name = "tb_loan")
@Cache(usage = CacheConcurrencyStrategy.READ_WRITE)
public class Loan extends RecordEntity implements Serializable {

    private String zzjgdm;//组织机构代码
    private String qymc;//企业名称
    private String sjsj;//数据时间
    private String jrjgbm;//金融机构编码
    private String jrjgwdmc;//金融机构网点名称
    private String wdssqu;//网点所属地区
    private String dkhth;//贷款合同号
    private String nbpj;//内部对企业评级结果
    private String wbpj;//外部对企业评级
    private String dkjjh;//贷款借据号
    private String bz;//币种
    private BigDecimal jbll;//基本利率
    private BigDecimal llfd;//利率浮动
    private BigDecimal sjll;//实际利率
    private String dklb;//贷款类别
    private BigDecimal dkffje;//贷款发放金额
    private BigDecimal dkye;//贷款余额
    private Date fkrq;//放款日期
    private Date dqrq;//到期日期
    private Date zqrq;//展期日期
    private String dbfs;//担保方式
    private String bzmx;//保证明细
    private BigDecimal bzje;//保证金额
    private String dymx;//抵押明细
    private BigDecimal dyje;//抵押金额
    private String zymx;//质押明细
    private BigDecimal zyje;//质押金额
    private String wjfl;//五级分类
    private BigDecimal qxje;//欠息金额
    private String dkkbm;//贷款卡编号
    private String detail;

    private String dklbDesc;
    private String dbfsCode;

    public String getDkkbm() {
        return dkkbm;
    }

    public void setDkkbm(String dkkbm) {
        this.dkkbm = dkkbm;
    }

    public BigDecimal getDkffje() {
        return dkffje;
    }

    public void setDkffje(BigDecimal dkffje) {
        this.dkffje = dkffje;
    }

    public BigDecimal getDkye() {
        return dkye;
    }

    public void setDkye(BigDecimal dkye) {
        this.dkye = dkye;
    }

    public String getDklb() {
        return dklb;
    }

    public void setDklb(String dklb) {
        this.dklb = dklb;
    }

    public String getZzjgdm() {
        return zzjgdm;
    }

    public void setZzjgdm(String zzjgdm) {
        this.zzjgdm = zzjgdm;
    }

    public String getQymc() {
        return qymc;
    }

    public void setQymc(String qymc) {
        this.qymc = qymc;
    }

    public String getSjsj() {
        return sjsj;
    }

    public void setSjsj(String sjsj) {
        this.sjsj = sjsj;
    }

    public String getJrjgbm() {
        return jrjgbm;
    }

    public void setJrjgbm(String jrjgbm) {
        this.jrjgbm = jrjgbm;
    }

    public String getJrjgwdmc() {
        return jrjgwdmc;
    }

    public void setJrjgwdmc(String jrjgwdmc) {
        this.jrjgwdmc = jrjgwdmc;
    }

    public String getWdssqu() {
        return wdssqu;
    }

    public void setWdssqu(String wdssqu) {
        this.wdssqu = wdssqu;
    }

    public String getDkhth() {
        return dkhth;
    }

    public void setDkhth(String dkhth) {
        this.dkhth = dkhth;
    }

    public String getNbpj() {
        return nbpj;
    }

    public void setNbpj(String nbpj) {
        this.nbpj = nbpj;
    }

    public String getWbpj() {
        return wbpj;
    }

    public void setWbpj(String wbpj) {
        this.wbpj = wbpj;
    }

    public String getDkjjh() {
        return dkjjh;
    }

    public void setDkjjh(String dkjjh) {
        this.dkjjh = dkjjh;
    }

    public String getBz() {
        return bz;
    }

    public void setBz(String bz) {
        this.bz = bz;
    }

    public BigDecimal getJbll() {
        return jbll;
    }

    public void setJbll(BigDecimal jbll) {
        this.jbll = jbll;
    }

    public BigDecimal getLlfd() {
        return llfd;
    }

    public void setLlfd(BigDecimal llfd) {
        this.llfd = llfd;
    }

    public BigDecimal getSjll() {
        return sjll;
    }

    public void setSjll(BigDecimal sjll) {
        this.sjll = sjll;
    }

    public Date getFkrq() {
        return fkrq;
    }

    public void setFkrq(Date fkrq) {
        this.fkrq = fkrq;
    }

    public Date getDqrq() {
        return dqrq;
    }

    public void setDqrq(Date dqrq) {
        this.dqrq = dqrq;
    }

    public Date getZqrq() {
        return zqrq;
    }

    public void setZqrq(Date zqrq) {
        this.zqrq = zqrq;
    }

    public String getDbfs() {
        return dbfs;
    }

    public void setDbfs(String dbfs) {
        this.dbfs = dbfs;
    }

    public String getBzmx() {
        return bzmx;
    }

    public void setBzmx(String bzmx) {
        this.bzmx = bzmx;
    }

    public BigDecimal getBzje() {
        return bzje;
    }

    public void setBzje(BigDecimal bzje) {
        this.bzje = bzje;
    }

    public String getDymx() {
        return dymx;
    }

    public void setDymx(String dymx) {
        this.dymx = dymx;
    }

    public BigDecimal getDyje() {
        return dyje;
    }

    public void setDyje(BigDecimal dyje) {
        this.dyje = dyje;
    }

    public BigDecimal getZyje() {
        return zyje;
    }

    public void setZyje(BigDecimal zyje) {
        this.zyje = zyje;
    }

    public BigDecimal getQxje() {
        return qxje;
    }

    public void setQxje(BigDecimal qxje) {
        this.qxje = qxje;
    }

    public String getZymx() {
        return zymx;
    }

    public void setZymx(String zymx) {
        this.zymx = zymx;
    }

    public String getWjfl() {
        return wjfl;
    }

    public void setWjfl(String wjfl) {
        this.wjfl = wjfl;
    }

    @Transient
    public String getDetail() {
        this.detail=" tb_loan RecordId : "+this.recordId+" 组织机构代码 : "+this.zzjgdm
                +" 企业名称 : "+this.qymc;
        return detail;
    }

    public void setDetail(String detail) {
        this.detail = detail;
    }

    @Transient
    public String getDklbDesc() {
        return dklbDesc;
    }

    public void setDklbDesc(String dklbDesc) {
        this.dklbDesc = dklbDesc;
    }

    @Transient
    public String getDbfsCode() {
        return dbfsCode;
    }

    public void setDbfsCode(String dbfsCode) {
        this.dbfsCode = dbfsCode;
    }
}